\hypertarget{classcGroup}{\section{c\-Group$<$ T, group\-\_\-rep $>$ Class Template Reference}
\label{classcGroup}\index{c\-Group$<$ T, group\-\_\-rep $>$@{c\-Group$<$ T, group\-\_\-rep $>$}}
}


{\ttfamily \#include $<$group.\-h$>$}



Inheritance diagram for c\-Group$<$ T, group\-\_\-rep $>$\-:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=210pt]{classcGroup__inherit__graph}
\end{center}
\end{figure}


Collaboration diagram for c\-Group$<$ T, group\-\_\-rep $>$\-:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=210pt]{classcGroup__coll__graph}
\end{center}
\end{figure}
\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classcGroup_abf5ed8f308bc05dbbb75b1f2ccb3bf18}{typedef T {\bfseries Element\-Type}}\label{classcGroup_abf5ed8f308bc05dbbb75b1f2ccb3bf18}

\item 
\hypertarget{classcGroup_a8c16d6d9eb0d68d286505528c1e94d3a}{typedef \hyperlink{classcGroup}{c\-Group}$<$ T, group\-\_\-rep $>$ {\bfseries Self\-Type}}\label{classcGroup_a8c16d6d9eb0d68d286505528c1e94d3a}

\item 
\hypertarget{classcGroup_a8752843a8e5c6d23411de90d4e1a1f51}{typedef group\-\_\-rep$<$ T $>$ {\bfseries Rep\-Type}}\label{classcGroup_a8752843a8e5c6d23411de90d4e1a1f51}

\item 
\hypertarget{classcGroup_aa233178cfb06c6c59df798ff40fce156}{typedef std\-::vector$<$ Element\-Type $>$ {\bfseries Grp\-Vec}}\label{classcGroup_aa233178cfb06c6c59df798ff40fce156}

\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classcGroup_a28f87c232c9d07ba9f9b0ec159e8243a}{{\bfseries c\-Group} (std\-::vector$<$ Element\-Type $>$ \&gr\-\_\-vec)}\label{classcGroup_a28f87c232c9d07ba9f9b0ec159e8243a}

\item 
\hypertarget{classcGroup_a38b515a0db10fa1fcebe7b635fc0d481}{{\bfseries c\-Group} (std\-::initializer\-\_\-list$<$ T $>$ ini\-\_\-list)}\label{classcGroup_a38b515a0db10fa1fcebe7b635fc0d481}

\item 
bool \hyperlink{classcGroup_acb69bf5f56805920d414a80ac5e54f36}{is\-Soluble} () const 
\item 
\hyperlink{classcSubgroup}{c\-Subgroup}$<$ \hyperlink{classcGroup}{Self\-Type} $>$ \hyperlink{classcGroup_a5177b0cd3b5a1c6d1dc7673c28fa14f0}{Get\-Centralizer} (const \hyperlink{classcSubgroup}{c\-Subgroup}$<$ \hyperlink{classcGroup}{Self\-Type} $>$ \&\-\_\-subgrp, Grp\-Vec \&grp\-\_\-el) const 
\item 
\hyperlink{classcSubgroup}{c\-Subgroup}$<$ \hyperlink{classcGroup}{Self\-Type} $>$ \hyperlink{classcGroup_ade523d25a78970fffa70f17d68643d15}{Get\-Center} (Grp\-Vec \&grp\-\_\-el) const 
\item 
\hyperlink{classcSubgroup}{c\-Subgroup}$<$ \hyperlink{classcGroup}{Self\-Type} $>$ \hyperlink{classcGroup_a1bcc2cdb6db5251b23cd099b25ffa057}{Get\-Normalizer} (const \hyperlink{classcSubgroup}{c\-Subgroup}$<$ \hyperlink{classcGroup}{Self\-Type} $>$ \&\-\_\-subgrp) const 
\item 
std\-::vector$<$ Element\-Type $>$ \hyperlink{classcGroup_ac0b8279834b59139afeb562be03937de}{Get\-Centralizer\-El} (Element\-Type \&element, Grp\-Vec \&grp\-\_\-el) const 
\item 
std\-::vector$<$ Element\-Type $>$ \hyperlink{classcGroup_aa0946d645c3ae06c56dc16f13a9f7ef2}{Get\-Center\-El} (Grp\-Vec \&grp\-\_\-el) const 
\item 
std\-::vector$<$ Element\-Type $>$ \hyperlink{classcGroup_a442a90478046593d38f5d131eb22b9a9}{Get\-Normalizer\-El} (const \hyperlink{classcSubgroup}{c\-Subgroup}$<$ \hyperlink{classcGroup}{Self\-Type} $>$ \&\-\_\-subgrp) const 
\end{DoxyCompactItemize}


\subsection{Detailed Description}
\subsubsection*{template$<$typename T, template$<$ typename $>$ class group\-\_\-rep = c\-Gen\-Rep$>$class c\-Group$<$ T, group\-\_\-rep $>$}

this class represents a group given by a set of generators it uses an internal representation given by the group\-\_\-rep template parameter and the type element T 

\subsection{Member Function Documentation}
\hypertarget{classcGroup_ade523d25a78970fffa70f17d68643d15}{\index{c\-Group@{c\-Group}!Get\-Center@{Get\-Center}}
\index{Get\-Center@{Get\-Center}!cGroup@{c\-Group}}
\subsubsection[{Get\-Center}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T , template$<$ typename $>$ class group\-\_\-rep = c\-Gen\-Rep$>$ {\bf c\-Subgroup}$<${\bf Self\-Type}$>$ {\bf c\-Group}$<$ T, group\-\_\-rep $>$\-::Get\-Center (
\begin{DoxyParamCaption}
\item[{Grp\-Vec \&}]{grp\-\_\-el}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classcGroup_ade523d25a78970fffa70f17d68643d15}
returns the center subgroup of the group Z(\-G), the elements that comute with all the elements of the group 

Here is the call graph for this function\-:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=336pt]{classcGroup_ade523d25a78970fffa70f17d68643d15_cgraph}
\end{center}
\end{figure}


\hypertarget{classcGroup_aa0946d645c3ae06c56dc16f13a9f7ef2}{\index{c\-Group@{c\-Group}!Get\-Center\-El@{Get\-Center\-El}}
\index{Get\-Center\-El@{Get\-Center\-El}!cGroup@{c\-Group}}
\subsubsection[{Get\-Center\-El}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T , template$<$ typename $>$ class group\-\_\-rep = c\-Gen\-Rep$>$ std\-::vector$<$Element\-Type$>$ {\bf c\-Group}$<$ T, group\-\_\-rep $>$\-::Get\-Center\-El (
\begin{DoxyParamCaption}
\item[{Grp\-Vec \&}]{grp\-\_\-el}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classcGroup_aa0946d645c3ae06c56dc16f13a9f7ef2}
returns the centralizer subgroup of the group as a list of elements \hypertarget{classcGroup_a5177b0cd3b5a1c6d1dc7673c28fa14f0}{\index{c\-Group@{c\-Group}!Get\-Centralizer@{Get\-Centralizer}}
\index{Get\-Centralizer@{Get\-Centralizer}!cGroup@{c\-Group}}
\subsubsection[{Get\-Centralizer}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T , template$<$ typename $>$ class group\-\_\-rep = c\-Gen\-Rep$>$ {\bf c\-Subgroup}$<${\bf Self\-Type}$>$ {\bf c\-Group}$<$ T, group\-\_\-rep $>$\-::Get\-Centralizer (
\begin{DoxyParamCaption}
\item[{const {\bf c\-Subgroup}$<$ {\bf Self\-Type} $>$ \&}]{\-\_\-subgrp, }
\item[{Grp\-Vec \&}]{grp\-\_\-el}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classcGroup_a5177b0cd3b5a1c6d1dc7673c28fa14f0}
returns the centralizer subgroup of the group using the given subgroup 

Here is the call graph for this function\-:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{classcGroup_a5177b0cd3b5a1c6d1dc7673c28fa14f0_cgraph}
\end{center}
\end{figure}


\hypertarget{classcGroup_ac0b8279834b59139afeb562be03937de}{\index{c\-Group@{c\-Group}!Get\-Centralizer\-El@{Get\-Centralizer\-El}}
\index{Get\-Centralizer\-El@{Get\-Centralizer\-El}!cGroup@{c\-Group}}
\subsubsection[{Get\-Centralizer\-El}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T , template$<$ typename $>$ class group\-\_\-rep = c\-Gen\-Rep$>$ std\-::vector$<$Element\-Type$>$ {\bf c\-Group}$<$ T, group\-\_\-rep $>$\-::Get\-Centralizer\-El (
\begin{DoxyParamCaption}
\item[{Element\-Type \&}]{element, }
\item[{Grp\-Vec \&}]{grp\-\_\-el}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classcGroup_ac0b8279834b59139afeb562be03937de}
returns the centralizer subgroup of a given element \hypertarget{classcGroup_a1bcc2cdb6db5251b23cd099b25ffa057}{\index{c\-Group@{c\-Group}!Get\-Normalizer@{Get\-Normalizer}}
\index{Get\-Normalizer@{Get\-Normalizer}!cGroup@{c\-Group}}
\subsubsection[{Get\-Normalizer}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T , template$<$ typename $>$ class group\-\_\-rep = c\-Gen\-Rep$>$ {\bf c\-Subgroup}$<${\bf Self\-Type}$>$ {\bf c\-Group}$<$ T, group\-\_\-rep $>$\-::Get\-Normalizer (
\begin{DoxyParamCaption}
\item[{const {\bf c\-Subgroup}$<$ {\bf Self\-Type} $>$ \&}]{\-\_\-subgrp}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classcGroup_a1bcc2cdb6db5251b23cd099b25ffa057}
returns the normalizer subgroup, given a subgroup 

Here is the call graph for this function\-:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{classcGroup_a1bcc2cdb6db5251b23cd099b25ffa057_cgraph}
\end{center}
\end{figure}


\hypertarget{classcGroup_a442a90478046593d38f5d131eb22b9a9}{\index{c\-Group@{c\-Group}!Get\-Normalizer\-El@{Get\-Normalizer\-El}}
\index{Get\-Normalizer\-El@{Get\-Normalizer\-El}!cGroup@{c\-Group}}
\subsubsection[{Get\-Normalizer\-El}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T , template$<$ typename $>$ class group\-\_\-rep = c\-Gen\-Rep$>$ std\-::vector$<$Element\-Type$>$ {\bf c\-Group}$<$ T, group\-\_\-rep $>$\-::Get\-Normalizer\-El (
\begin{DoxyParamCaption}
\item[{const {\bf c\-Subgroup}$<$ {\bf Self\-Type} $>$ \&}]{\-\_\-subgrp}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classcGroup_a442a90478046593d38f5d131eb22b9a9}
T\-O\-D\-O -- check for bugs returns the normalizer subgroup of the given subgroup as a list of elements \hypertarget{classcGroup_acb69bf5f56805920d414a80ac5e54f36}{\index{c\-Group@{c\-Group}!is\-Soluble@{is\-Soluble}}
\index{is\-Soluble@{is\-Soluble}!cGroup@{c\-Group}}
\subsubsection[{is\-Soluble}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T , template$<$ typename $>$ class group\-\_\-rep = c\-Gen\-Rep$>$ bool {\bf c\-Group}$<$ T, group\-\_\-rep $>$\-::is\-Soluble (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classcGroup_acb69bf5f56805920d414a80ac5e54f36}
T\-O\-D\-O implement this ? returns true if the group is soluble 

The documentation for this class was generated from the following file\-:\begin{DoxyCompactItemize}
\item 
group.\-h\end{DoxyCompactItemize}
